/*
 * PlayScenarioPanel.h
 *
 *  Created on: Oct 24, 2011
 *      Author: gonzalo
 */

#ifndef PLAYSCENARIOPANEL_H_
#define PLAYSCENARIOPANEL_H_

#include "ScenarioPanel.h"
#include "../../Server/SpaceBattleInterface.h"
#include "Bullet.h"
#include "ShipStatus.h"
#include "Ship.h"


class PlayScenarioPanel: public ScenarioPanel {
private:

	std::string owner;

	std::list<Asteroide*> asteroides;

	std::list<Ship*> jugadores;

	std::list<Bullet*> bullets;

	Ship* getPlayerShip();

	virtual void handleEvent(Event event);

	void addPlayer(Ship* newShip);

public:

	PlayScenarioPanel(int xPos, int yPos, Widget* parent,SpaceBattleInterface* interface);

	virtual void resolve();

	void addAsteroides(std::list<Asteroide*> asteroidesList);

	void addBullet(int x, int y, int angle, int duracionBala);

	void eraseBullet(std::list<Bullet*>::iterator bullet);

	void addPlayer(ShipStatus* ShipStatus);

	ShipStatus getShipStatus();

	virtual void showOn(SDL_Surface* surface);

};

#endif /* PLAYSCENARIOPANEL_H_ */
